package com.gpframework.module.wages.domain.req;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.gpframework.module.wages.domain.GzPersonnelFoundation;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.NoArgsConstructor;
import lombok.ToString;
import lombok.experimental.Accessors;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * @ClassName GzPersonnelFoundationAdd
 * @Author gpframework
 * @Date 2024-01-18
 * @Version 1.0.0
 * @Description 人员基础Add对象
 */
@Data
@ToString
@EqualsAndHashCode
@NoArgsConstructor
@Accessors(chain = true)
public class GzPersonnelFoundationAdd {
    private static final long serialVersionUID = 1L;

//    /** 月份 */
//    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
//    @ApiModelProperty("月份")
//    private Date month;


    /** 部门 */
    @ApiModelProperty("部门")
    private String departmentName;

    @ApiModelProperty("1档口及办公室工资2中转3仓库（其他数字根据需求变化）")
    private Long departmentType;

    @ApiModelProperty("岗位name")
    private String postName;

    @ApiModelProperty("小类等级")
    private String subclassIevel;
    /** 名字 */
    @ApiModelProperty("名字")
    private String name;

    /** 员工id */
    @ApiModelProperty("员工id")
    private Long userId;

    /** 入职日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @ApiModelProperty("入职日期")
    private Date joinedDate;

    /** 月度天数 */
    @ApiModelProperty("月度天数")
    private Long monthlyDays;

    /** 基本工资 */
    @ApiModelProperty("基本工资")
    private BigDecimal basicSalary;

    /** 岗位工资 */
    @ApiModelProperty("岗位工资")
    private BigDecimal postWage;

    /** 管理津贴 */
    @ApiModelProperty("管理津贴")
    private BigDecimal managementAllowance;

    /** 住房津贴 */
    @ApiModelProperty("住房津贴")
    private BigDecimal houseaLlowance;

    /** 社保补贴 */
    @ApiModelProperty("社保补贴")
    private BigDecimal socialSecuritySubsidies;

    /** 绩效奖金 */
    @ApiModelProperty("绩效奖金")
    private BigDecimal achievementBonus;

    /** 评定标准奖金 */
    @ApiModelProperty("评定标准奖金")
    private String evaluationCriteriaBonus;

    /** 新增高温补贴 */
    @ApiModelProperty("新增高温补贴")
    private BigDecimal increaseTemperatureSubsidy;

    /** 工资级别 */
    @ApiModelProperty("工资级别")
    private String salaryLevel;

    /** 销售档次 */
    @ApiModelProperty("销售档次")
    private BigDecimal  salesLevel;

    /** 工龄奖 */
    @ApiModelProperty("工龄奖")
    private BigDecimal serviceExperienceAward;

    /** 其他补贴 */
    @ApiModelProperty("其他补贴")
    private BigDecimal otherSubsidies;

    /** 社保个人部分 */
    @ApiModelProperty("社保个人部分")
    private String personalPortionOfSocialSecurity;

    /** 排序 */
    @ApiModelProperty("排序")
    private Long sort;

    /** 备注 */
    @ApiModelProperty("备注")
    private String remarks;

    //绩效系数
    @ApiModelProperty("绩效系数")
    private Double performanceCoefficient;

    @ApiModelProperty
    private List<GzPersonnelFoundation> gzPersonnelFoundationList;


    @ApiModelProperty("评定等级")
    private String ratingIevel;


    /** 全勤奖金 */
    private BigDecimal fullAttendanceBonus;

    /** 加班费 */
    private BigDecimal overtimePay;



}
